Method and system for multi-language web homepage selection process

ABSTRACT

A method and system to allow a user to select a web site home page in a desired language is disclosed. The method comprises the steps of identifying within a web address request a directional information item, providing a web page associated with the web address to a second web site corresponding to said directional information item, wherein the second web site includes a language translator, translating the web page textual information in accordance with the language translator and returning the translated web page to the user. The method further comprises the steps of accessing a control table to determine a status of the web page and obtaining a version of the web page stored locally on the second site, when said status indicates said web page is locally stored and valid, otherwise obtaining a current version of the web page; and translating the obtained web page.

FIELD OF THE INVENTION

This application is related to the field of network page management andmore specifically to a method and system for dynamically establishing aweb site home page in a desired language.

BACKGROUND OF THE INVENTION

Since its advent, the use of public networks, such as the Internet andthe World Wide Web (www), has become a significant tool for companies todistribute information regarding their products and services. Manycompanies that sell or advertise their products to the general public,whether locally or in the international community, commonly use a portalhomepage that allows their customers to view the contents of the entireweb site in a particular language. Conventionally, the portal homepageis in a language that is classified as a default language and the useris provided with a link to a homepage in a then desired language. Hence,a user must first sign on to the web site and then select a particularor desired language homepage before obtaining information regarding thecompany's products or services.

While this method enables the company to respond to local languagedesires, the maintenance of the web page in multiple languages is asignificant burden on company resources. When products or services arechanged, added or deleted, associated web pages, in each language, mustbe updated to reflect such changes.

Accordingly, there is a need for a method and a system for reducing theburden imposed by multiple language web sites and the ability tosimplify the updating of such web sites.

SUMMARY OF THE INVENTION

A method and system to allow a user to select a web site home page in adesired language is disclosed. The method comprises the steps ofidentifying within a web address request a directional information item,providing a web page associated with the web address to a second website corresponding to said directional informational item, wherein thesecond web site includes a language translator, translating the web pagetextual information in accordance with the language translator andreturning the translated web page to the user. The method furthercomprises the steps of accessing a control table to determine a statusof the web page and obtaining a version of the web page stored locallyon the second site, when said status indicates said web page is locallystored and valid, otherwise obtaining a current version of the web page;and translating the obtained web page.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a block diagram of an exemplary process for selectingdesired homepage language in accordance with the principles of theinvention;

FIG. 2 illustrates in further detail the processing shown in FIG. 1;

FIG. 3 illustrates a flow chart providing detail of the processing shownin FIGS. 1 and 2; and

FIG. 4 illustrates a system for implementing the process illustrated inFIGS. 1-3.

It is to be understood that these drawings are solely for purposes ofillustrating the concepts of the invention and are not intended as adefinition of the limits of the invention. The embodiments shown inFIGS. 1-4 and described in the accompanying detailed description are tobe used as illustrative embodiments and should not be construed as theonly manner of practicing the invention. Also, the same referencenumerals, possibly supplemented with reference characters whereappropriate, have been used to identify similar elements.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates a block diagram of an exemplary process 100 forselecting desired homepage language in accordance with the principles ofthe invention. In this exemplary process, browser software 110 on clientcomputer 115 transmits a request, using a web address or a URL, overnetwork 120 to server 125. Server 125, in this case, is representativeof a proxy to the host web designated in the transmitted address or URL.Server 125 includes language recognizer software 130 that extractsinformation from the address or URL and directs the request based on theinformation extracted from the request. More specifically, the languagerecognizer software 130 determines whether information in the request isassociated with a site language cookie that has previously been storedon client computer 115. Cookie technology is well known in the art ofnetworking and need not be discussed in detail herein.

If language recognizer software 130 determines that site language cookieinformation is not available, the request is directed to a default website 140. In this illustrated case, the default web site 140 ismaintained in a traditional Chinese language 145. However, if thelanguage recognizer software 130 determines site language cookieinformation is available, then the request is directed to theappropriate language virtual web site, shown as web sites 150 and 155.In this illustrative case site 150 may be associated with a web sitethat is maintained in a simple Chinese language while site 155 may beassociated with a web site maintained in Japanese. Although only twoalternate language web sites are shown, it would be recognized by thoseskilled in the art that the present invention is not limited to only thetwo sites shown but many contain any number of alternate language websites.

FIG. 2 illustrates in further detail processing 100 shown in FIG. 1. Inthis case, browser software 110 provides a request to web serverlanguage recognizer software 130 as previously discussed. Languagerecognizer software 130 extracts desired data from the address andlanguage information from a URI table (not shown), which providesinformation regarding the desired web page and includes informationregarding addresses of alternate web sites or instructions that providedirection regarding language conversion processing. For example, the URItable may include information that a desired web page is stored on alocal web server (i.e., local mode) and this page is not suitable forlanguage translation or conversion. In another aspect, the URI table mayindicate that a desired web page is always obtained from a languageconverter program. Furthermore, in one case, the web page may bereferred to a “no-cache” page as the desired web page may change. Inanother case, the ability to access the desired web page may haveexpired and must again be read. In this case, access to the desired webpage may be made through information stored in a “cache” memory and isreferred to as a “cache” page.

As would be appreciated, the language recognizer software may beresident on the proxy server 125 or on a second server (not shown).Dependent upon the desired language information, a basic web page may beprovided as represented by web server or site 140, as in thisillustrated example, when the desired language information in the URItable is determined to be “ZH-BIG5”. However, if the desired languageinformation is determined to be “GB2312” or “JP-EUC,” the request isdirected to either web site 150, e.g., simple Chinese, or web site 155,e.g., Japanese, respectively. Web sites 150 and 155 may further includelanguage plug-in software 152 and 157, respectively. Language plug-insoftware is operable to translate or convert the information on aprovided basic web page to the appropriate language. The converted webpage is then provided to the browser software 110 for viewing on theuser's computer.

FIG. 3 illustrates a process 300 that provides further detail of theprocessing shown in FIGS. 1 and 2. In this case, when a URI attributetable is received at the web site containing a language conversionplug-in, the URI attribute table is analyzed to determine a next processstep.

If the URI attribute table indicates that the desired web site is a“no-cache mode” site, at block 310, then the existing web page receivedfrom the web server is translated into the appropriate language, atblock 315, and returned to browser software 110. If, however, it is nota “no-cache mode” site, a determination is made at block 320 whether theweb site associated with the URI is local to the web site. If the website is not indicated to be local, then the web page is reloaded atblock 322, translated at block 324 and saved as a local entry at block326.

However, if the web site is indicated to be local, a determination ismade at block 330 whether the locally stored web site is still valid.For example, the determination may check whether the time the local filewas last modified is less than a storage time associated with the baseweb page. If the local is valid then the file is translated at block 335and returned to browser software. Otherwise, the base web page isreloaded, translated and returned to browser software.

In another aspect of the process shown in FIG. 1, the URI attributetable may be updated periodically, preferably on an hourly basis. Thisperiodic update process allows an administrator or web master tomanually update the URI attribute table for different purposes. Forexample, pages may be personalized or different style pages may be usedas local pages. In this periodic update, the modification time of baseweb pages may also be updated.

FIG. 4 illustrates a system 400 for implementing the principles of theinvention as depicted in the exemplary processing shown in FIGS. 1-3. Inthis exemplary system embodiment 400, input data is received fromsources 405 over network 450 and is processed in accordance with one ormore software programs executed by processing system 410. Processor 410may be representative of a handheld calculator, special purpose orgeneral purpose processing system, desktop computer, laptop computer,palm computer, or personal digital assistant (PDA) device, etc., as wellas portions or combinations of these and other devices that can performthe operations illustrated in FIGS. 1-3. The results of processingsystem 510 may then be transmitted over network 470 for viewing ondisplay 480, reporting device 490 and/or a second processing system 495.

Specifically, processing system 410 includes one or more input/outputdevices 540 that receive data from the illustrated source devices 405over network 450. The received data may then be applied to processor420, which is in communication with input/output device 440 and memory430. Processor 420 may be a central processing unit (CPU) or dedicatedhardware/software, such as a PAL, ASIC, FGPA, operable to executecomputer instruction code or a combination of code and logicaloperations. Input/output devices 440, processor 420 and memory 430 maycommunicate over a communication medium 425. Communication medium 425may represent a communication network, e.g., ISA, PCI, PCMCIA bus, oneor more internal connections of a circuit, circuit card or other device,as well as portions and combinations of these and other communicationmedia.

In one embodiment, processor 420 may include code which, when executed,performs the operations illustrated herein. The code may be contained inmemory 430, read or downloaded from a memory medium such as a CD-ROM orfloppy disk represented as 483, or provided by manual input device 485,such as a keyboard or a keypad entry, or read from a magnetic or opticalmedium (not shown) which is accessible by processor 420, when needed.Information items provided by input device 483, 485 and/or magneticmedium may be accessible to processor 420 through input/output device440, as shown. Further, the data received by input/output device 440 maybe immediately accessible by processor 420 or may be stored in memory430. Processor 420 may further provide the results of the processingshown herein to display 480, recording device 490 or a second processingunit 495 through I/O device 440.

As one skilled in the art would recognize, the terms processor,processing system, computer or computer system may represent one or moreprocessing units in communication with one or more memory units andother devices, e.g., peripherals, connected electronically to andcommunicating with the at least one processing unit. Furthermore, thedevices illustrated may be electronically connected to the one or moreprocessing units via internal busses, e.g., serial, parallel, ISA bus,microchannel bus, PCI bus, PCMCIA bus, USB, wireless, infrared, radiofrequency, etc., or one or more internal connections of a circuit,circuit card or other device, as well as portions and combinations ofthese and other communication media, or an external network, e.g., theInternet and Intranet. In other embodiments, hardware circuitry may beused in place of, or in combination with, software instructions toimplement the invention. For example, the elements illustrated hereinmay also be implemented as discrete hardware elements or may beintegrated into a single unit.

As would be understood, the operations illustrated in FIGS. 2-5 may beperformed sequentially or in parallel using one or several differentprocessors to determine specific values. Processor system 410 may alsobe in two-way communication with each of the sources 405. Processorsystem 410 may further receive or transmit data over one or more networkconnections from a server or servers over, e.g., a global computercommunications network such as the Internet, Intranet, a wide areanetwork (WAN), a metropolitan area network (MAN), a local area network(LAN), a terrestrial broadcast system, a cable network, a satellitenetwork, a wireless network, or a telephone network (POTS), as well asportions or combinations of these and other types of networks. As willbe appreciated, networks 450 and 470 may also be internal networks orone or more internal connections of a circuit, circuit card or otherdevice, as well as portions and combinations of these and othercommunication media or an external network, e.g., the Internet andIntranet.

While there has been shown, described, and pointed out fundamental novelfeatures of the present invention as applied to preferred embodimentsthereof, it will be understood that various omissions and substitutionsand changes in the apparatus described, in the form and details of thedevices disclosed, and in their operation, may be made by those skilledin the art without departing from the spirit of the present invention.It is expressly intended that all combinations of those elements thatperform substantially the same function in substantially the same way toachieve the same results are within the scope of the invention.Substitutions of elements from one described embodiment to another arealso fully intended and contemplated.

1. A method to allow a user to select a web site home page in a desiredlanguage comprising the steps of: identifying within a web addressrequest to said web site a directional information item; providing a webpage associated with said web address to a second web site correspondingto said directional informational item, wherein said second web siteincludes a language translator; translating information on said web pagein accordance with said language translator; and returning saidtranslated web page to said user.
 2. The method as recited in claim 1,wherein said directional information item is available on said user'saccess device wherein said directional information is selected from thegroup consisting of: prestored, manually input, electronically input,downloaded over a network.
 3. (canceled)
 4. The method as recited inclaim 1, wherein the step of translating further comprises the steps of:accessing a control table to determine a status of said web page; andaccessing a version of said web page stored locally on said second site,when said status indicates said web page is locally stored and valid;otherwise obtaining a current version of said web page; and translatingsaid obtained web page.
 5. The method as recited in claim 4, furthercomprising the step of: storing said obtained web page locally; andupdating said access table to indicate local availability.
 6. The methodas recited in claim 5, further comprising the step of: indicating a timewhen said obtained web page is stored.
 7. A system to allow a user toselect a web site home page in a desired language comprising: aprocessor in communication with a memory, said processor operable toexecute code for: identifying within a web address request to said website a directional information item; providing a web page associatedwith said web address to a second web site corresponding to saiddirectional information item, wherein said second web site includes alanguage translator; translating information on said web page inaccordance with said language translator; and returning said translatedweb page to said user.
 8. The system as recited in claim 7, wherein saiddirectional information item is available on said user's access devicewherein said directional information is selected from the groupconsisting of: prestored, manually input, electronically input,downloaded over a network.
 9. (canceled)
 10. The system as recited inclaim 1, wherein said processor is further operable to execute code for:accessing a control table to determine a status of said web page; andaccessing a version of said web page stored locally on said second site,when said status indicates said web page is locally stored and valid;otherwise obtaining a current version of said web page; and translatingsaid obtained web page.
 11. The system as recited in claim 10, whereinsaid processor is further operable to execute code for: storing saidobtained web page locally; and updating said access table to indicatelocal availability.
 12. The system as recited in claim 11, wherein saidprocessor is further operable to execute code for: indicating a timewhen said obtained web page is stored.
 13. The system as recited inclaim 7, further comprising; an input/output device in communicationwith said processor.
 14. The system as recited in claim 7, wherein saidcode is stored in said memory.